package com.lfy.yunpicture.service;

import com.lfy.yunpicture.model.dto.statistics.*;
import com.lfy.yunpicture.model.entity.User;
import com.lfy.yunpicture.model.vo.statistic.*;

import java.util.List;

public interface SpaceStatisticService {
    /**
     *  空间大小使用情况分析
     *  @param spaceSizeUsageRequest
     *  @param user
     */
     SpaceSizeUsageResponse getSpaceSizeUsageSituation(SpaceSizeUsageRequest spaceSizeUsageRequest , User user);
    /**
     * 空间图片分类分析
     *
     * @param spaceSizeUsageRequest
     * @param user
     */
    List<SpaceCategoryUsageResponse> getSpaceCategoryUsageSituation(SpaceCategoryUsageRequest spaceSizeUsageRequest, User user);
    /**
     * 空间图片标签分析
     * @param spaceSizeUsageRequest
     * @param user
     */
    List<SpaceTagUsageResponse> getSpaceTagUsageSituation(SpaceTagUsageRequest spaceSizeUsageRequest, User user);
    /**
     * 照片大小范围分析
     * @param spacePictureSizeRangeRequest
     * @param user
     */
    List<SpacePictureSizeRangeResponse> getSpacePictureSizeRangeSituation(SpacePictureSizeRangeRequest spacePictureSizeRangeRequest, User user);
    /**
     * 照片上传情况分析
     * @param spacePictureUploadConditionRequest
     * @param user
     */
    List<SpacePictureUploadConditionResponse> getSpacePictureUploadConditionSituation(SpacePictureUploadConditionRequest spacePictureUploadConditionRequest,User user);
    /**
     * 空间使用排行榜
     * @param spaceUsageRankRequest
     * @param user
     */
    List<SpaceUsageRankResponse> getSpaceUsageRankSituation(SpaceUsageRankRequest spaceUsageRankRequest, User user);
}
